home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_300 / 365_02 / makefile.mix < prev    next >
Makefile  |  1992-04-04  |  19KB  |  696 lines

  1. # combined Makefile for ELVIS - a clone of `vi`
  2. #
  3. # After editing this Makefile as described below, you should...
  4. #
  5. # Use `make` to compile all programs
  6. # Use `make install` to copy the programs to the BIN directory
  7. # Use `make clean` to remove all object files
  8. # Use `make clobber` to remove everything except source & documentation
  9. # Use `make uue` to produce uuencoded compressed tar archives of the source
  10. # Use `make sh` to produce shar archives of the source
  11. #
  12. # Several groups of Makefile settings are included below.  Choose *ONE* group
  13. # of settings for your particular system, and leave the others commented out.
  14. # The meanings of these settings are:
  15. #    OBJ    the filename extension for unlinked object files -- usually .o
  16. #    EXE    filename extension for elvis executable file -- .exe, .tpp or null
  17. #    COM    filename extension for executable support files -- .com, .tpp or null
  18. #    EXTRA    version-specific object files used in elvis
  19. #    EXTRA2    version-specific object files used in elvis & elvrec
  20. #    LIBS    any special libraries, such as "-ltermcap"
  21. #    BIN    directory where executables should be installed
  22. #    CC    the C compiler command, possibly with "memory model" flags
  23. #    CFLAGS    compiler flags used to select compile-time options
  24. #    LNK    the linker command needed to link OBJ files (if not cc)
  25. #    LFLAGS    linker flags used to select link-time options
  26. #    SMALL    flag for special small memory model compilation -- usually null
  27. #    OF    link flag to control the output file's name -- usually -o<space>
  28. #    RF    flag used to denote "compile but don't link" -- usually -c
  29. #    PROGS    the list of all programs
  30. #    CHMEM    any extra commands to be run after ELVIS is linked
  31. #    SORT    if the "tags" file must be sorted, then SORT=-DSORT
  32. #    RM    the name of a program that deletes files
  33. #    CP    name of a program that copies files -- copy or cp, usually
  34. #    SYS    type of system & compiler: unx/tos/os9/dos (maybe vms?)
  35. #    DUMMY    usually nothing, but OS9 needs "dummy"
  36. #    CFG    name of compiler configuration file -- usually null
  37.  
  38. #---- These settings are recommended for System-V UNIX and SCO XENIX-386 ----
  39. #OBJ=    .o
  40. #EXE=
  41. #COM=
  42. #EXTRA=    unix$(OBJ)
  43. #EXTRA2=
  44. #LIBS=    -lterm
  45. #BIN=    /usr/local/bin
  46. #CC=    cc
  47. #CFLAGS=    -DM_SYSV -O -DNO_SHIFT_FKEYS
  48. #SMALL=
  49. #OF=    -o ""
  50. #RF=    -c
  51. #EVAL=    eval
  52. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) fmt$(COM) \
  53. #    elvprsv$(COM)
  54. #CHMEM=
  55. #SORT=    -DSORT
  56. #RM=    rm -f
  57. #CP=    cp
  58. #SYS=    unx
  59. #DUMMY=
  60. #CFG=
  61.  
  62. #---- These settings are recommended for SCO XENIX-286 ----
  63. #OBJ=    .o
  64. #EXE=
  65. #COM=
  66. #EXTRA=    unix$(OBJ)
  67. #EXTRA2=
  68. #LIBS=    -ltcap
  69. #BIN=    /usr/local/bin
  70. #CC=    cc -M2m -i
  71. #CFLAGS=    -Ox -DCS_IBMPC
  72. #SMALL=
  73. #OF=    -o ""
  74. #RF=    -c
  75. #EVAL=    eval
  76. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) fmt$(COM) \
  77. #    elvprsv$(COM)
  78. #CHMEM=
  79. #SORT=    -DSORT
  80. #RM=    rm -f
  81. #CP=    cp
  82. #SYS=    unx
  83. #DUMMY=
  84. #CFG=    
  85.  
  86. #---- These settings are recommended for BSD 4.3 UNIX and SunOS ----
  87. #OBJ=    .o
  88. #EXE=    
  89. #COM=    
  90. #EXTRA=    unix$(OBJ)
  91. #EXTRA2=
  92. #LIBS=    -ltermcap
  93. #BIN=    /usr/local/bin
  94. #CC=    cc
  95. #CFLAGS=    -Dbsd -O
  96. #SMALL=
  97. #OF=    -o ""
  98. #RF=    -c
  99. #EVAL=    eval
  100. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) elvprsv$(COM)
  101. #CHMEM=
  102. #SORT=    -DSORT
  103. #RM=    rm -f
  104. #CP=    cp
  105. #SYS=    unx
  106. #DUMMY=
  107. #CFG=
  108.  
  109. #---- These settings are recommended for Coherent ----
  110. #OBJ=.o
  111. #EXE=
  112. #COM=
  113. #EXTRA=    unix$(OBJ) tinyprnt$(OBJ)
  114. #EXTRA2=
  115. #LIBS=    -lterm
  116. #BIN=    /usr/bin
  117. #CC=    cc
  118. #CFLAGS=    -O -DCOHERENT -VSUVAR -DCRUNCH -DNO_CHARATTR -DNO_CURSORSHAPE \
  119. #    -DNO_DIGRAPH -DNO_MKEXRC -DNO_POPUP -DNO_FKEYS -DNO_ABBR
  120. #SMALL=
  121. #OF=    -o ""
  122. #RF=    -c
  123. #EVAL=    eval
  124. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) fmt$(COM) \
  125. #    elvprsv$(COM)
  126. #CHMEM=    fixstack 2000 elvis$(EXE)
  127. #SORT=
  128. #RM=    rm -f
  129. #CP=    cp
  130. #SYS=    unx
  131. #DUMMY=
  132. #CFG=
  133.  
  134. #---- These settings are recommended for Minix-ST ----
  135. #OBJ=    .o
  136. #EXE=
  137. #COM=
  138. #EXTRA=    unix$(OBJ)
  139. #EXTRA2=
  140. #LIBS=
  141. #BIN=    /usr/bin
  142. #CC=    cc
  143. ##CC=    gcc -s
  144. #CFLAGS=
  145. #SMALL=
  146. #OF=    -o ""
  147. #RF=    -c
  148. #EVAL=    eval
  149. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) fmt$(COM) \
  150. #    elvprsv$(COM)
  151. #CHMEM=    chmem =18000 elvis$(EXE)
  152. #SORT=
  153. #RM=    rm -f
  154. #CP=    cp
  155. #SYS=    unx
  156. #DUMMY=
  157. #CFG=
  158.  
  159. #---- These settings are recommended for Minix-PC ----
  160. #OBJ=    .s
  161. #EXE=
  162. #COM=
  163. #EXTRA=    tinytcap$(OBJ) unix$(OBJ) tinyprnt$(OBJ)
  164. #EXTRA2=
  165. #LIBS=
  166. #BIN=    /usr/bin
  167. #CC=    cc -i
  168. #CFLAGS=    -O -DCRUNCH \
  169. #    -DNO_MKEXRC -DNO_CURSORSHAPE -DNO_CHARATTR -DNO_SHOWMODE \
  170. #    -DNO_MODELINE -DNO_OPTCOLS -DNO_DIGRAPH -DNO_EXTENSIONS \
  171. #    -DNO_ERRLIST -DNO_FKEY -DNO_VISIBLE -DNO_COLOR -DNO_POPUP
  172. ###(not -NO_AT -DNO_SENTENCE -DNO_ABBR -DNO_RECYCLE -DNO_MAGIC -DNO_CHARSEARCH)
  173. #SMALL=
  174. #OF=    -o ""
  175. #RF=    -c
  176. #EVAL=    eval
  177. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) fmt$(COM) \
  178. #    elvprsv$(COM)
  179. #CHMEM=
  180. #SORT=
  181. #RM=    rm -f
  182. #CP=    cp
  183. #SYS=    unx
  184. #DUMMY=
  185. #CFG=
  186.  
  187. #---- These settings are recommended for Amiga port done using Aztec 5.2b ----
  188. #    For AmigaDOS 2.04, you're all set! Its the default target!
  189. #OBJ=    .o
  190. #EXE=
  191. #COM=
  192. #EXTRA=    amiga$(OBJ) amitty$(OBJ) amisysio$(OBJ)
  193. #EXTRA2= tinytcap$(OBJ)
  194. #LIBS=    -lc
  195. #BIN=    sys:utilities
  196. #CC=    cc
  197. #CFLAGS=    -sob -Damiga
  198. #LNK=    ln
  199. #LFLAGS=
  200. #SMALL=
  201. #OF=    -o 
  202. #RF=
  203. #EVAL=
  204. #PROGS1=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) fmt$(COM) 
  205. #PROGS2=    elvprsv$(COM) ex$(COM) vi$(COM) view$(COM) input$(COM)
  206. #PROGS=    $(PROGS1) $(PROGS2)
  207. #CHMEM=
  208. #SORT=
  209. #RM=    delete
  210. #CP=    copy
  211. #SYS=    ami
  212. #DUMMY=
  213. #CFG=
  214.  
  215. #---- These settings are recommended for MS-DOS + MS-C + NDMAKE ----
  216. #OBJ=    .obj
  217. #EXE=    .exe
  218. #COM=    .exe    # .com might work, try it
  219. #EXTRA=    pc$(OBJ) sysdos$(OBJ) tinytcap$(OBJ)
  220. #EXTRA2=
  221. #LIBS=
  222. #BIN=    c:\dos
  223. #CC=    cl
  224. #CFLAGS=    -O -DCS_IBMPC -DCS_SPECIAL -DINTERNAL_TAGS
  225. #SMALL= /AM
  226. #OF=    -o 
  227. #RF=    -c
  228. #EVAL=
  229. #PROGS1=    elvis$(EXE) ex$(COM) ctags$(COM) ref$(COM) elvrec$(COM)
  230. #PROGS2=    wildcard$(COM) fmt$(COM) elvprsv$(COM)
  231. #PROGS=    $(PROGS1) $(PROGS2)
  232. #CHMEM=
  233. #SORT=
  234. #RM=    del
  235. #CP=    copy
  236. #SYS=    dos
  237. #DUMMY=
  238. #CFG=
  239.  
  240. ##---- These settings are recommended for MS-DOS + TURBO/BORLAND C ----
  241. ## CFG: name of the compiler config and response files
  242. ## TC_LIB & TC_INC: location of standard libraries and header files.
  243. #OBJ=    .obj
  244. #EXE=    .exe
  245. #COM=    .com
  246. #EXTRA=    pc$(OBJ) sysdos$(OBJ) tinytcap$(OBJ)
  247. #EXTRA2=
  248. #LIBS=@borland.rsp
  249. #BIN=    c:\bin
  250. #CFG=    borland.cfg borland.rsp
  251. #CC=    bcc
  252. #TC_LIB=    c:\bcc\lib
  253. #TC_INC=    c:\bcc\include
  254. #CFLAGS=    +borland.cfg
  255. ## uncomment next line iff using bcc, and you want to use pre-compiled headers
  256. #HDRS=    -H -H=borland.hdr
  257. ## uncomment next line to use med memory model for elvis
  258. ##CRNCH=    -DCRUNCH -mm
  259. #TC_CFLAGS1=    -ml -O -f- -w- -v -vi- -G- -DCS_IBMPC -DCS_SPECIAL -DINTERNAL_TAGS
  260. #TC_CFLAGS2=    $(HDRS) $(CRNCH) -I$(TC_INC) -L$(TC_LIB)
  261. ## extra flags for compiling support programs
  262. #SMALL=    -mt -lt -H- -v-
  263. ## extra flags for linking elvis (strip symbols)
  264. #EFLAGS=    -v-
  265. #OF=    -e
  266. #RF=    -c
  267. #EVAL=
  268. #PROGS1=    elvis$(EXE) ex$(COM) ctags$(COM) ref$(COM) elvrec$(COM)
  269. #PROGS2=    wildcard$(COM) fmt$(COM) elvprsv$(COM)
  270. #PROGS=    $(PROGS1) $(PROGS2)
  271. #CHMEM=
  272. #SORT=
  273. #RM=    del
  274. #CP=    copy
  275. #SYS=    dos
  276. #DUMMY=
  277. ##source file compilation rule:
  278. #.c.obj:
  279. #    $(CC) $(CFLAGS) $(RF) {$< }
  280.  
  281. #---- These settings can almost make DOS executables using the XENIX compiler
  282. #OBJ=    .o
  283. #EXE=    .exe
  284. #COM=    .exe    # .com might work, try it
  285. #EXTRA=    pc$(OBJ) sysdos$(OBJ) tinytcap$(OBJ)
  286. #EXTRA2=
  287. #LIBS=
  288. #BIN=    a:
  289. #CC=    cc -M2m -dos -F 4000
  290. #CFLAGS=    -O -DCS_IBMPC -DCS_SPECIAL -DINTERNAL_TAGS -Dvolatile= -Dconst=
  291. #SMALL=
  292. #OF=    -o ""
  293. #RF=    -c
  294. #EVAL=
  295. #PROGS1=    elvis$(EXE) ex$(COM) ctags$(COM) ref$(COM) elvrec$(COM)
  296. #PROGS2=    wildcard$(COM) fmt$(COM) elvprsv$(COM)
  297. #PROGS=    $(PROGS1) $(PROGS2)
  298. #CHMEM=
  299. #SORT=
  300. #RM=    rm -f
  301. #CP=    doscp -r
  302. #SYS=    xdos
  303. #DUMMY=
  304. #CFG=
  305.  
  306. #--- These settings are recommended for Atari TOS + Mark Williams C or Gnu C ----
  307. #OBJ=    .o
  308. #EXE=    .ttp
  309. #COM=    .ttp
  310. #EXTRA=    sysdos$(OBJ) tinytcap$(OBJ)
  311. #EXTRA2=    atari$(OBJ)
  312. #LIBS=
  313. #BIN=    c:\ #
  314. #CC=    cc -VPEEP
  315. ##CC=    gcc -s
  316. #CFLAGS=    -O -DCS_IBMPC -DCS_SPECIAL
  317. #SMALL=
  318. #OF=    -o 
  319. #RF=    -c
  320. #EVAL=
  321. #PROGS=    elvis$(EXE) ctags$(COM) ref$(COM) elvrec$(COM) wildcard$(COM) \
  322. #    shell$(COM) fmt$(COM) elvprsv$(COM)
  323. #CHMEM=    @echo -n
  324. #SORT=
  325. #RM=    rm -f
  326. #CP=    copy
  327. #SYS=    tos
  328. #DUMMY=
  329. #CFG=
  330.  
  331. #---- These settings are recommended for OS-9/6